package com.coconet.gas.service;

import com.coconet.gas.rabbitMq.entity.CheckEntity;
import com.gxa.entity.ResultInfoPage;
import com.coconet.gas.vo.dw.Report;
import com.coconet.gas.vo.request.PortListVo;
import com.gxa.entity.IpResultEntity;
import com.gxa.entity.TargetEntity;
import com.gxa.entity.TaskEntity;

import java.util.List;

public interface TaskService {

    List<Report> getReportByTaskId(String taskId) throws Exception;

    void createPortList(PortListVo portListVo) throws Exception;

    void createTarget(TargetEntity target) throws Exception;

    void createTask(TaskEntity taskEntity) throws Exception;

    void startTask(String taskId);

    void deleteTask(String taskId);

    List<Report> getReportByReportId(String reportId);

    List<Report> getReportByHost(String host);

    void deleteAllByIp(String ip);

    void addTargetAndTasksRabbitmq(CheckEntity checkEntity);

    List<IpResultEntity> getScore() throws Exception;

    List<IpResultEntity> getHig() throws Exception;

    List<IpResultEntity> getMid() throws Exception;

    List<IpResultEntity> getLow() throws Exception;

    List<IpResultEntity> getWarning() throws Exception;

    List<ResultInfoPage> getResultPageByDateAndLvAndIpAndAssetsName(String date1, String date2, String assetsName, String lv, String ip, Integer pageNum, Integer pageSize);
}
